// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
 
0ADF: add_dynamic_GXT_entry "RAMX" text "[~R~~H~ANEMY POINT][~W~~1~] [~G~~H~PLAYER POINT][~W~~1~]" 
0ADF: add_dynamic_GXT_entry "XLOST" text "~R~~H~YOU LOST ~1~" 
0ADF: add_dynamic_GXT_entry "XWIN" text "~G~~H~WINNER REWARD ~1~" 
thread 'STREET_CHALANGE' 
wait 0 
29@ = 400.0 
0@ = 0 
$8056 = 11 
27@ = 0 
28@ = 0 
0AF1: write_int 0 to_ini_file "CLEO\POZIT.INI" section "RACE" key "END" 
:STREET_CHALANGE_C1
wait 0 
if 
   Player.Defined($PLAYER_CHAR)
jf @STREET_CHALANGE_C1

29@ = 400.0 
0@ = 0 
27@ = 0 
28@ = 0 
Model.Load(#SUPERGT)
Model.Load(#FAM1)
038B: load_requested_models 
04C4: store_coords_to 20@ 21@ 22@ from_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0
04D3: get_nearest_car_path_coords_from 20@ 21@ 22@ type 2 store_to 6@ 7@ 8@ 
10@ = Actor.Angle($PLAYER_ACTOR)
4@ = Car.Create(#SUPERGT, 6@, 7@, 8@)
Car.Angle(4@) = 10@
5@ = Actor.CreateAsDriver(CivMale, #FAM1, 4@)
9@ = Marker.CreateAboveCar(4@)
0A30: repair_car 4@ 
Car.SetImmunities(4@, 1, 1, 1, 1, 1)
Actor.SetImmunities(5@, 1, 1, 1, 1, 1)
053F: set_car 4@ tires_vulnerability 0 
Car.DoorStatus(4@) = 2
077C: clear_actor 5@ acquaintance 4 to_all_pedtypes // see ped.dat 
072F: enable_car 4@ stuck_check_distance 1.0 time 2000 and_restore_if stuck 1 flipped 1 unk_place_on_road_properly 1 to_path -1 // extended 03CC 
0190: add_car 4@ to_flipped_check // 6 max 
03CC: enable_car 4@ stuck_check_distance_to 2.0 time_to 2000 
088B: set_car 4@ form_drag_multiplier_to 0.0 
0587: enable_car 4@ validate_position 0 
00AE: set_car 4@ traffic_behaviour_to 2 
Car.SetMaxSpeed(4@, 253.2)
03CC: enable_car 4@ stuck_check_distance_to 2.0 time_to 2000 
0@ = 0 
$1797 = 10000 
014E: start_timer_at $1797 count_in_direction 1 // global_variable 

:STREET_CHALANGE_267
wait 0 
if 
  $1797 == 0 
jf @STREET_CHALANGE_284 
jump @STREET_CHALANGE_28B 

:STREET_CHALANGE_284
jump @STREET_CHALANGE_267 

:STREET_CHALANGE_28B
097A: play_audio_at 0.0 0.0 0.0 event 1164 
097A: play_audio_at 0.0 0.0 0.0 event 1057 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 0.0 29@ 0.0 
02C1: store_to 6@ 7@ 8@ car_path_coords_closest_to 1@ 2@ 3@ 
018A: 12@ = create_checkpoint_at 6@ 7@ 8@ 
06D5: 13@ = create_racing_checkpoint_at 6@ 7@ 8@ point_to 0.0 0.0 0.0 type 1 radius 4.0 
Car.DriveTo(4@, 6@, 7@, 8@)

:STREET_CHALANGE_358
wait 0
0AF0: 11@ = get_int_from_ini_file "CLEO\POZIT.INI" section "RACE" key "END"  
if oR
11@ == 1
wasted_or_busted 
   Actor.Dead($PLAYER_ACTOR)
jf @STREET_CHALANGE_39E 
Marker.Disable(9@)
Marker.Disable(12@)
06D6: disable_racing_checkpoint 13@ 
Actor.RemoveReferences(5@)
Car.RemoveReferences(4@)
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1  // ~r~MISSfO FRACASSADA!
END_THREAD 

:STREET_CHALANGE_39E
if 
056E:   car 4@ defined 
jf @STREET_CHALANGE_465 
if 
00F2:   actor 5@ near_actor $PLAYER_ACTOR radius 15.0 15.0 0 
jf @STREET_CHALANGE_465 
if and
09D0:   car 4@ on_wheels 
  0@ >= 3 
jf @STREET_CHALANGE_465 
02E3: 14@ = car 4@ speed 
14@ *= 1.2 
14@ += 1.1 
 
0407: store_coords_to 15@ 16@ 17@ from_car 4@ with_offset 1.0 -2.1 -0.7 
Camera.Shake(60)
064B: 18@ = create_particle "EXPLOSION_TINY" at 15@ 16@ 17@ type 0 
064C: make_particle 18@ visible 
064F: remove_references_to_particle 18@ 
 
Car.SetSpeedInstantly(4@, 14@)

:STREET_CHALANGE_465
if 
056E:   car 4@ defined 
jf @STREET_CHALANGE_48F 
if 
01F4:   car 4@ flipped 
jf @STREET_CHALANGE_48F 
Car.Angle(4@) = 180.0

:STREET_CHALANGE_48F
if or
   Car.Wrecked(4@)
8448:   not actor 5@ in_car 4@ 
jf @STREET_CHALANGE_4D9 
Marker.Disable(9@)
Marker.Disable(12@)
06D6: disable_racing_checkpoint 13@ 
Actor.RemoveReferences(5@)
Car.RemoveReferences(4@)
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1  // ~r~MISSfO FRACASSADA!
03E6: remove_text_box 
END_THREAD 

:STREET_CHALANGE_4D9
if 
0100:   actor 5@ in_sphere 6@ 7@ 8@ radius 5.0 5.0 5.0 sphere 1 in_car 
jf @STREET_CHALANGE_531 
27@ += 1 
if 
  28@ >= 1 
jf @STREET_CHALANGE_52A 
28@ -= 1 
27@ += 1 

:STREET_CHALANGE_52A
jump @STREET_CHALANGE_586 

:STREET_CHALANGE_531
if 
0100:   actor $PLAYER_ACTOR in_sphere 6@ 7@ 8@ radius 5.0 5.0 5.0 sphere 1 in_car 
jf @STREET_CHALANGE_630 
28@ += 1 
if 
  27@ >= 1 
jf @STREET_CHALANGE_582 
27@ -= 1 
28@ += 1 

:STREET_CHALANGE_582
wait 0 

:STREET_CHALANGE_586
0@ += 1 
0513: show_text_box_1number 'NUMBER' number 0@  // ~1~
0208: 29@ = random_float_in_ranges -400.2 500.2 
0208: 30@ = random_float_in_ranges -400.2 500.2 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 30@ 29@ 0.0 
02C1: store_to 6@ 7@ 8@ car_path_coords_closest_to 1@ 2@ 3@ 
Marker.Disable(12@)
06D6: disable_racing_checkpoint 13@ 
018A: 12@ = create_checkpoint_at 6@ 7@ 8@ 
06D5: 13@ = create_racing_checkpoint_at 6@ 7@ 8@ point_to 0.0 0.0 0.0 type 1 radius 4.0 
Car.DriveTo(4@, 6@, 7@, 8@)

:STREET_CHALANGE_630
if 
  0@ >= 10 
jf @STREET_CHALANGE_690 
if 
001D:   27@ > 28@ // (int) 
jf @STREET_CHALANGE_690 
10@ -= 10000 
01E3: show_text_1number_styled GXT 'XLOST' number 10@ time 5000 style 1 
Player.Money($PLAYER_CHAR) += $7868
Marker.Disable(12@)
06D6: disable_racing_checkpoint 13@ 
Car.RemoveReferences(4@)
03E6: remove_text_box 
END_THREAD 

:STREET_CHALANGE_690
if 
  0@ >= 10 
jf @STREET_CHALANGE_6F0 
if 
001D:   28@ > 27@ // (int) 
jf @STREET_CHALANGE_6F0 
10@ += 10000 
01E3: show_text_1number_styled GXT 'XWIN' number 10@ time 5000 style 1 
Player.Money($PLAYER_CHAR) += $7869
Marker.Disable(12@)
06D6: disable_racing_checkpoint 13@ 
Car.RemoveReferences(4@)
03E6: remove_text_box 
END_THREAD 

:STREET_CHALANGE_6F0
if and
03CE:   car 4@ stuck 
01C1:   car 4@ stopped 
jf @STREET_CHALANGE_74B 
wait 100 
Actor.StorePos(5@, 20@, 21@, 22@)
04D3: get_nearest_car_path_coords_from 20@ 21@ 22@ type 2 store_to 20@ 21@ 22@
Car.PutAt(4@, 20@, 21@, 22@)
31@ = Actor.Angle($PLAYER_ACTOR)
Car.Angle(4@) = 31@

:STREET_CHALANGE_74B
if and
81F4:   not car 4@ flipped 
09D0:   car 4@ on_wheels 
81C1:   not car 4@ stopped 
81F3:   not car 4@ in_air 
jf @STREET_CHALANGE_822 
02E3: 19@ = car 4@ speed 
if 
  19@ > 5.0 
jf @STREET_CHALANGE_7C6 
02E3: 23@ = car 4@ speed 
02E3: 24@ = car 4@ speed 
02E3: 25@ = car 4@ speed 
24@ /= 1.7 
25@ /= 17.7 
0209: 26@ = random_int_in_ranges 25@ 24@ 
005B: 23@ += 26@ // (float) 

:STREET_CHALANGE_7C6
if 
   not 19@ > 10.0 
jf @STREET_CHALANGE_822 
02E3: 23@ = car 4@ speed 
02E3: 24@ = car 4@ speed 
02E3: 25@ = car 4@ speed 
24@ /= 1.7 
25@ /= 17.7 
0209: 26@ = random_int_in_ranges 25@ 24@ 
005B: 23@ += 26@ // (float) 
Car.SetSpeedInstantly(4@, 23@)

:STREET_CHALANGE_822
if 
056E:   car 4@ defined 
jf @STREET_CHALANGE_884 
if 
02BF:   car 4@ sunk 
jf @STREET_CHALANGE_884 
Actor.StorePos(5@, 20@, 21@, 22@)
04D3: get_nearest_car_path_coords_from 20@ 21@ 22@ type 2 store_to 20@ 21@ 22@
Car.PutAt(4@, 20@, 21@, 22@)
31@ = Actor.Angle($PLAYER_ACTOR)
Car.Angle(4@) = 31@

:STREET_CHALANGE_884
02FD: show_text_2numbers_lowpriority GXT 'RAMX' numbers 27@ 28@ time 5 flag 1 
jump @STREET_CHALANGE_358